Interrupt 21h Function 7160h Minor Code 2h
Retrieves the
complete path in its long filename form for the specified file or path. The
function returns the long name for all directories in the path.
mov ax, 7160h
mov cl, 2 ; Get Long Path Name
mov ch, SubstExpand ; see below
mov si, seg SourcePath ; see below
mov ds, si
mov si, offset SourcePath
mov di, seg DestPath ; see below
mov es, di
mov di, offset DestPath
int 21h
jc error
Parameters
SubstExpand
Flag that
indicates if the returned path should contain a SUBST drive letter or the path
associated with the SUBST drive. Zero is specified to indicate that the
returned path should contain the path associated with the SUBST drive, and 80h
is specified to indicate that the returned path should contain the SUBST drive
letter.
SourcePath
Address of a
null-terminated string that names the file or path to retrieve the complete
long path for. Either the long filename or the short form is acceptable as the
source string.
DestPath
Address of
the buffer that receives the complete path. The buffer should be large enough
to contain the largest possible Windows 95 path (260 characters, including the
drive letter, colon, leading backslash, and terminating null character).
Return Value
Clears the
carry flag, modifies the AX register, and returns the complete long path in the
given buffer if successful. Otherwise, the function sets the carry flag and
sets the AX register to an error value.
Remarks
Relative
paths containing the characters . and .. in SourcePath are fully expanded. Since this
function performs validation, SourcePath must contain either a valid
filename or path.